The unprecedented growth of mobile and social technologies has redefined the way people connect and communicate. On-line social networking sites such as Facebook™, Linkedin™, Pinterest™, Tumblr™, Google+™, Hootsuite™, and Twitter™ have forever changed the way people share information with each other. Smartphones, tablet computers, IPads, and other mobile devices are increasingly used by many consumers as their primary platform for communicating and managing their social, business, financial, and personal affairs. Salesforce1™, available at www.salesforce.com/salesforce1/, is a mobile application providing a sales, service, and marketing platform for facilitating social collaboration with colleagues, partners, products, employees, and customers.
At the same time, software development is evolving away from the client-server model toward network-based processing systems that provide access to data and services via the Internet or other networks. In contrast to traditional systems that host networked applications on dedicated server hardware, a “cloud” computing model allows applications to be provided over the network “as a service” supplied by an infrastructure provider. The infrastructure provider typically abstracts the underlying hardware and other resources used to deliver a customer-developed application so that the customer no longer needs to operate and support dedicated server hardware. The cloud computing model can often provide substantial cost savings to the customer over the life of the application because the customer no longer needs to provide dedicated network infrastructure, electrical and temperature controls, physical security and other logistics in support of dedicated server hardware.
Multi-tenant cloud-based architectures have been developed to improve collaboration, integration, and community-based cooperation between customer tenants without sacrificing data security. Generally speaking, multi-tenancy refers to a system where a single hardware and software platform simultaneously supports multiple user groups (also referred to as “organizations” or “tenants”) from a common data storage element (also referred to as a “multi-tenant database”). The multi-tenant design provides a number of advantages over conventional server virtualization systems. First, the multi-tenant platform operator can often make improvements to the platform based upon collective information from the entire tenant community. Additionally, because all users in the multi-tenant environment execute applications within a common processing space, it is relatively easy to grant or deny access to specific sets of data for any user within the multi-tenant platform, thereby improving collaboration and integration between applications and the data managed by the various applications. The multi-tenant architecture therefore allows convenient and cost effective sharing of similar application features between multiple sets of users.
Presently known tools, such as Appurify™, facilitate functional and performance testing of mobile applications and websites. However, in terms of performance, such systems are typically limited to measuring the network latency component, and are not well suited to measure the contributions of client-side performance such as client-side compute and render. In addition, Apple provides iOS-based tools, and Google provides Android-based tools for debugging and measuring performance for mobile applications running on respective simulators/emulators. However, there currently are no tools for testing the end-to-end performance (e.g., measuring server, network and fine grained client-side metrics) or otherwise quantifying the breakdown of entire end-to-end experience associated with using mobile applications on mobile devices.
Systems and methods are thus needed which address these shortcomings.